home *** CD-ROM | disk | FTP | other *** search
- STalkerâ„¢ 3.00 to 3.01 Patch Program
-
- This program will upgrade STalker version 3.00 to
- version 3.01. It will ONLY upgrade version 3.00.
-
- This program is copyright © 1991 by Gribnif Software. All rights are
- reserved. This program may be freely distributed to all legitimate
- registered users of STalker 3.
-
- Any questions or comments, please contact us at:
-
- Gribnif Software, P.O. Box 350, Hadley, MA 01035, USA
- Tel: (413) 584-7887, Fax: (413) 584-2565
- GEnie: GRIBNIF
-
-
- What is needed to upgrade
- =========================
-
- 1. An un-modified, registered, STalker 3 Master Disk, version 3.00.
-
- 2. A hard disk or a blank formatted floppy disk (to place the
- PATCH301.PRG and PATCH301.DAT on).
-
-
- How to upgrade your STalker version 3.00 to version 3.01
- =========================================================
-
- 1. Make sure you have made a backup copy of the STalker 3 Master Disk.
-
- 2. Place the PATCH301.PRG and PATCH301.DAT on your hard disk or on the
- blank floppy disk (it may need the extra disk space to write some
- temporary files, depending on free memory.)
-
- 3. Run the PATCH302.PRG and follow the on-screen prompts.
-
- 4. Once you have finished upgrading your master disk to version 3.01,
- make a backup copy of this newer version.
-
- ** VERY IMPORTANT STEP, READ CAREFULLY **
-
- 5. To install the newer version on your system, you MUST replace the
- following STalker 3.00 files in your system with the 3.01 version
- files from the newly upgraded disk:
-
- \STALKER.ACC
- \STALKER.PRG
- \STALKER.RSC
- \BACKTALK\SCRIPTS\PREFIX.BTS
- \BACKTALK\SCRIPTS\BUF_SIZ.BTS
- \BACKTALK\SCRIPTS\BUF_SIZ.BTK
- \BACKTALK\BACKTALK.PRG
- \BACKTALK\BUF_SIZ.BTK -- Same as the one in SCRIPTS folder
- \EXTRAS\AUXINIT.PRG
-
- You will also find these two files with this upgrade, and they should
- be copied to your scripts directory:
-
- WRITESCR.BTS
- WRITESCR.BTK
-
- Additionally, since the first few copies of STalker sold had a
- faulty version of INF_CONV.PRG, a corrected one has also been
- included with the patch program.
-
-
- If you get an error message
- ===========================
-
- If your STalker 3 Master Disk has been modified in any way (including
- moving files around), the patch program will not be able to perform
- the upgrade. You will get an error message indicating that this has
- happened. In this case. you should mail us the disk so that we can
- upgrade it.
-
- To have your disk upgraded by us, you need to:
-
- 1. Send in your original, registered, STalker 3.00 Master Disk.
- 2. Enclose a U.S. check for $5 + $2 shipping & handling ($7 total).
- 3. Enclose a note with your name, address, and daytime phone number.
-
- In return you will receive the upgraded 3.01 Master Disk.
-
-
- Changes for STalker 3.01 - Jan. 15th 1992
- =========================================
-
- This version contains the following enhancements:
-
- + The efficiency of the transfer protocols (ZModem mainly) was improved by
- speeding up some of the most common low-level routines.
-
- The "Favour concurrency" option was also made a bit more black & white.
- At 9600 baud or greater with Favor Concurrency off, you won't be able to
- do much else on the machine since STalker will be aiming for maximum
- throughput. If you need to abort a high-speed file transfer, use the
- UNDO key rather than attempting to click on the Abort button. On faster
- machines, either will probably work, but on a stock 8MHz machine STalker
- may not process the mouse button.
-
- + If the file transfer window is currently on the screen, the INSERT key
- will allow you to alternate between the STalker window and the transfer
- window.
-
- + STalker will now automatically expand the serial input buffer of a port
- if it is less than 2K. The output buffer is not changed since it is not
- as important to proper operation of STalker.
-
- In program mode STalker checks the buffer size each time you change
- ports, so if you use several port in a session, you'll end up giving each
- a 2K buffer.
-
- In accessory mode, it will only expand the port's buffer during initial
- startup since that is the only time that STalker can safely allocate
- extra memory from TOS. If your configuration indicates use of port X and
- you switch to port Y during the session, port Y's buffer will not be
- expanded.
-
- + New versions of AUXINIT and the BUF_SIZE BackTALK script have been
- included. The new AUXINIT handles TT and Mega STe ports in addition to
- the ST serial port. You'll need to run a separate copy for each port
- whose buffer you wish to expand. Simply create as many copies as you
- need in your AUTO folder and then use the BUF_SIZE BackTALK script to set
- them up. Please note that if you have TOS 1.4 or newer, you can probably
- use a buffer size of more than 31k (up to 63k) without a problem.
-
- + The Atari-standard clipboard format is now supported. To enable the
- Atari-format clipboard, set the "Clipboard drive" in the Preferences
- dialog to "Z". Any other drive will cause STalker to use the old method
- which is compatible with older STalker/STeno programs. STeno 2.00 uses
- the "old" format; later versions will use the new one.
-
- Note that the Atari method requires scanning of a directory in order to
- determine if a scrap is available, so to avoid a lot of extra physical
- disk I/O, use a program such as CACHEXXX.PRG that caches directory
- entries.
-
- + Support has been added for specifying scripts to invoke at startup via
- the command-line. This allows you to "Install" STALKER.PRG as the
- application for files of type .BTK. STalker will attempt to execute each
- file specified on the command line in turn, after it first executes the
- normal startup scripts.
-
- If a qualified filename is given, i.e., something like C:\GO.BTK, STalker
- will attempt to access the file exactly as specified. If just a filename
- is given, ex. "GO.BTK", STalker will look in the default directory.
-
- + A new BackTALK command, "exit_program()" was added. It returns nothing
- and takes no parameters. If STalker is operating in program mode, it
- will cause STalker to terminate immediately. In accessory mode the call
- does nothing and returns immediately; you can use this fact to take
- whatever actions are appropriate in accessory mode by placing statements
- after the exit_program() call. For example:
-
- ... exit_program();
- // If the script gets here, we must be in ACC mode.
- exit(0); // (or whatever is appropriate)
-
- + There is now a "write_script()" BackTALK command. This function watches
- data from the host and the user and builds a script containing a sequence
- of wait_for() / port_send() commands. Included is the file WRITESCR.BTS,
- which is a small script that does the necessary stuff before calling
- write_script(). Pressing Control-Z will terminate WRITESCR.BTK.
-
- Please note that scripts which are generated by this command are fairly
- basic. Some tweaking may be necessary, and things such as file
- downloading are not recorded. Function keys are referenced by their
- number, which means that if a script relies on the F1 key and you change
- the assignment of F1, the script may cease to work as expected.
-
- For documentation on the actual format of write_script(), see the
- file WRITESCR.BTS.
-
- + A set_time() BackTALK function was added. This is the converse of the
- get_time() call, and takes one parameter which should have the desired
- date and time packed into it in the same format returned by get_time().
- Internally, this function sets both the XBIOS and GEMDOS time and date.
-
- + NOTE: SCRIPTS COMPILED WITH THIS VERSION MAY NOT WORK PROPERLY UNDER
- STALKER 3.00!! This is due to the AND/OR enhancement described below.
- If your script does not use the keywords AND, OR, or their && and ||
- equivalents, and does not call write_script(), exit_program(), or
- set_time() you will be fine. If you use AND/OR you'll get an "Illegal
- Instruction" error under 3.00. Similarly, if you use write_script(),
- exit_program(), or set_time() you will get an "Unknown function number"
- error.
-
- + The IF/THEN/ELSE/ENDIF construct now recognizes an ELSEIF statement. The
- syntax is now:
-
- IF expression THEN statements; [ELSEIF expression THEN statements;]
- [ELSE statements;] ENDIF
-
- You can use as many ELSEIF's as you like, i.e., you are not limited to
- just one. This makes situations like the following much easier to code
- and read:
-
- IF user_choice == 'A' THEN ; ELSEIF user_choice == 'B' THEN ; ELSEIF
- user_choice == 'C' THEN ; ELSE ; ENDIF
-
- Note that the code generated for handling ELSEIF is compatible with
- STalker 3.00. Only AND, OR, write_script(), and exit_program() cause
- incompatibilities.
-
- + The "Save configuration as..." command is now allowed when STalker is
- "Disabled". This makes it easier to create a .INF file that starts
- STalker in the disabled state.
-
- + The "Dial selected entries" command is now disabled if DCD is enabled and
- active, to prevent the effects of accidentally pressing Shift-Alt-A while
- online.
-
- + STalker now displays a message and exits if no VDI workstations are
- available at startup.
-
- + A problem with capture mode getting disabled at startup has been fixed.
-
- + Problems with Capture and Printing being turned off incorrectly should
- now be fixed.
-
- + ZModem comparison now works with the DOS DSZ program, and the statistics
- in the transfer status window are now correct even if the comparison
- isn't successful.
-
- + An incoming ZModem download request with the mode set to ZCRESUM (rare)
- used to skip the file if the lengths were the same. Now it proceeds with
- the transfer. This is mainly an issue in conjunction with ZModem
- comparison, since DSZ and Unix SZ sets the mode to ZCRESUM when doing a
- comparison.
-
- + ZModem sends used to cause unpredicatable results if you aborted them
- right at the beginning, before STalker finished the initial handshake
- with the remote system. This has been fixed.
-
- + If the host system sent a timestamp along with a Y/Zmodem transfer, it
- would end up getting used on a subsequent XModem transfer. This has been
- fixed.
-
- + The XModem upload code didn't used to treat a timeout as an error, so it
- would not abort if you got 10 timeouts in a row.
-
- + A bug was fixed which cropped up if a configuration file saved in ST
- medium resolution was used on a mono system - the file transfer status
- window would only be half of the required height, preventing the total
- errors, checksum, error messages, and abort button from being displayed.
-
- + A minor bug in the file transfer status code was fixed. It caused the
- elapsed time display to be reset to zero when a zmodem upload error
- occurred.
-
- + VT52 "ESC b colour" and "ESC f" / "ESC e" sequences are fixed.
-
- + Some problems with the hide/show terminal cursor were fixed as part of
- the VT52 "ESC f" fix. One symptom used to be that the cursor would
- disappear if a clear-screen request was recieved when STalker's window
- was not on top.
-
- + Handling of scrolling regions was changed slightly. STalker used to work
- around a fault in the CBix code (CB simulator on Bix) where it issued the
- sequence "ESC [ 1 ; 24 r" to reset the scrolling region. CBix's method
- only works for 24 line terminals, so STalker used to treat a request for
- lines 1-24 as a request to reset the region. This messed up properly
- functioning programs such as Gnu Emacs which use the scrolling region
- properly (in particular when you tell the host you have, say, an 80x40
- terminal window). The correct way to reset the scrolling region is to
- send "ESC [ r" or "ESC [ 0 ; 0 r". An Alt-ESC keystroke will also reset
- the scrolling region.
-
- + If your clipboard was empty (ex. right after booting) and you copied text
- into it, the Paste command would stay disabled. This has been fixed.
-
- + A few clipboard-related problems were fixed, in particular, the bug that
- prevented clipboard data from being recognized the first time you
- selected something.
-
- + STalker would keep track of the filename used in an "Open configuration
- file" command even if the file was invalid. This could cause you to
- overwrite the wrong file on a subsequent "Save configuration" command.
- This has been fixed - STalker only remembers the name of the loaded file
- now if the operation is successful.
-
- + Redraws of the autodialer dialog when selecting the Load... and Save...
- buttons is now better.
-
- + The TT Serial 2 port really does support DTR. STalker now realizes this
- and allows DTR to be used to hang up the modem.
-
- + The Communication Port and BackTALK Script Settings dialogs used to
- sometimes run off the end of a TT med-res screen, causing a crash. This
- has been fixed.
-
- + It used to be possible to temporarily "lose" the mouse pointer. If you
- typed something and hence caused STalker to turn off the pointer, then
- "topped" another window without using Alt-Tab or without moving the mouse
- (ex. type Alt-Insert to simulate a left button click), the pointer would
- remain invisible until STalker's window was topped. This has been fixed.
-
-
- Other Changes to BackTALK:
- -------------------------
-
- + A bug with string constants that spanned lines was fixed. The compiler
- used to miss a \ at the beginning of a continuation line.
-
- + Some error situations are now reported more accurately.
-
- + The compiler now does what is known as "short-circuit" evaluation of
- AND/OR expressions. This is taken for granted in modern C compilers, and
- allows for more efficient code to be written. For example, under the old
- compiler, code such as:
-
- IF expression_1 AND expression_2 AND expression_3 THEN ... ENDIF
-
- would be compiled such that all three expressions were evaluated at
- runtime. The new compiler generates code which only evaluates as much of
- the expression as necessary. For example, if 'expression_1' were FALSE
- (0), the code would jump straight to the ENDIF.
-
- This allows you to write expressions like:
-
- IF string_pointer != NULL AND string_pointer[0] == 'A' THEN ...
- ENDIF
-
- Under the old compiler, the (string_pointer[0] == 'A') portion would be
- evaluated even if string_pointer was NULL, resulting in a run-time error.
-
- A minor side-effect of the new code generation is that an expression
- using AND / OR may not evaluate to either 1 or 0 as before. For example,
- the code:
-
- a = 42 OR 13;
-
- would cause 1 (TRUE) to be stored in 'a' under the old compiler. Now 'a'
- will end up containing 42. This is only a problem if you subsequently
- use code such as:
-
- if a == TRUE then ...
-
- Instead, use:
-
- if a then ...
-
- which is faster and smaller anyway. If you must have 1 or 0 in a boolean
- variable, use:
-
- a = (42 OR 13) != FALSE;
-
-